package com.ktwlsoft.archivemanage.payload.archiveUnit;

import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
import org.springframework.web.multipart.MultipartFile;

import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import java.util.Date;
import java.util.List;

/**
 * 单位情况修改
 *
 * @author zhuhe on 2019/10/25 9:13
 * @version 1.0
 */
@Api(value = "单位情况修改", description = "单位情况修改")
@Getter
@Setter
public class ArchiveUnitModifyRequest {

    /**主键*/
    @ApiModelProperty("主键")
    @NotNull(message = "id不能为空")
    private Long id;

    /**父级主键编号**/
    @ApiModelProperty("父级主键编号")
    private Long pid;

    /**单位**/
    @ApiModelProperty("单位")
    @Size(max = 30, message = "单位参数超长")
    @NotNull(message = "单位名称不能为空")
    private String unitName;

    /**树层级**/
    @ApiModelProperty("树层级")
    private Integer treeLevel;

    /**单位性质**/
    @ApiModelProperty("单位性质")
    @Size(max = 30, message = "单位性质参数超长")
    private String unitNature;

    /**单位电话**/
    @ApiModelProperty("单位电话")
    @Size(max = 30, message = "单位电话参数超长")
    private String unitTele;

    /**单位图片**/
    @ApiModelProperty("单位图片")
    @Size(max = 100, message = "单位图片参数超长")
    private String unitImg;

    /**账号状态(1启用，0禁用)**/
    @ApiModelProperty("账号状态(1启用，0禁用)")
    private Boolean enable;

    /**地址**/
    @ApiModelProperty("地址")
    @Size(max = 50, message = "地址参数超长")
    private String address;

    /**单位证件(ORGANIZE_CODE(组织机构代码), BUSINESS_LISENCE(营业执照))**/
    @ApiModelProperty("单位证件(ORGANIZE_CODE(组织机构代码), BUSINESS_LISENCE(营业执照))")
    @Size(max = 30, message = "单位证件(ORGANIZE_CODE(组织机构代码), BUSINESS_LISENCE(营业执照))参数超长")
    private String unitIdentityType;

    /**单位证件号**/
    @ApiModelProperty("单位证件号")
    @Size(max = 50, message = "单位证件号参数超长")
    private String unitIdentityNum;

    /**备注**/
    @ApiModelProperty("备注")
    @Size(max = 100, message = "备注参数超长")
    private String remark;

    /**从事档案时间**/
    @ApiModelProperty("从事档案时间")
    private Date workStrat;

    /**是否参加过培训**/
    @ApiModelProperty("是否参加过培训")
    private Boolean trained;

    /**单位图片**/
    @ApiModelProperty("单位图片")
    private MultipartFile unitImgFile;

    /**证件文件**/
    @ApiModelProperty("证件文件")
    private List<MultipartFile> identityFile;

    /**单位图片URL**/
    @ApiModelProperty("单位图片URL")
    private String unitImgFileUrl;

    /**证件文件URL**/
    @ApiModelProperty("证件文件URL")
    private List<String> identityFileUrl;
}